constructive algorithms sortings *1200

Please click on ads to support us..

Python Code:

import sys 
import math
from collections import deque
input = sys.stdin.readline 
t = int (input()) 
for i in range (t):
    n = int (input())
    inp = list ( map (int, input().split(' '))) 
    inp.sort()
    arr = deque() 
    for i in inp:
        arr.append(i)
    ans = deque () 
    while (len(arr)>1):
        a = arr.pop() 
        b = arr.popleft()
        ans.extendleft ([b,a]) 
    if (len(arr)==1):
        ans.appendleft(arr.pop())
    print (*ans, sep=' ')


C++ Code:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int t; cin>>t;
    while(t--){
        int n; cin>>n;
        long long arr[n];
        for(int i=0;i<n;i++) cin>>arr[i];
        sort(arr,arr+n);
        int ctr1=0,ctr2=n-1;
        vector<int> ans;
        while(ctr1<=ctr2){
            if(ctr1==ctr2){
                ans.push_back(arr[ctr1]);
                break;
            }
            ans.push_back(arr[ctr1]);
            ans.push_back(arr[ctr2]);
            ctr1++; ctr2--;
        }
        reverse(ans.begin(),ans.end());
        for(int i=0;i<n;i++) cout<<ans[i]<<" ";
        cout<<endl;
    }
}


Comments

Submit
0 Comments
More Questions

780C - Andryusha and Colored Balloons
1153A - Serval and Bus
1487C - Minimum Ties
1136A - Nastya Is Reading a Book
1353B - Two Arrays And Swaps
1490E - Accidental Victory
1335A - Candies and Two Sisters
96B - Lucky Numbers (easy)
1151B - Dima and a Bad XOR
1435B - A New Technique
1633A - Div 7
268A - Games
1062B - Math
1294C - Product of Three Numbers
749A - Bachgold Problem
1486B - Eastern Exhibition
1363A - Odd Selection
131B - Opposites Attract
490C - Hacking Cypher
158B - Taxi
41C - Email address
1373D - Maximum Sum on Even Positions
1574C - Slay the Dragon
621A - Wet Shark and Odd and Even
1395A - Boboniu Likes to Color Balls
1637C - Andrew and Stones
1334B - Middle Class
260C - Balls and Boxes
1554A - Cherry
11B - Jumping Jack